/**
 * 由于客户端只依赖于Car接口，所以即使日后改变了produceCar()的实现方式（接受不同的car），但对客户端是一点影响都没有。
 * 简单点来说当汽车制作方式因技术进步而改变，都不会影响客户如何操作汽车，因为用户只需要知道操作接口即可。 
 * 
 * 看类图：
 * 客户只要面对Factory,客户依赖于产品接口，产品的具体实现时可以与客户隔离的，他们也是可以抽像的。
 * 将Simple Factory的概念扩充，可以设计出各种物件皆通用的Factory类，作为专门生成、组装、管理对象的容器。
 * @author MIAO
 * Created on 2011-10-6
 * For more information, please visit:ismiao.com
 */
package com.ismiao.designPattern.Factory.SimpleFactory;

public class Client {
	public static void main(String[] args) throws Exception {
		showCar(CarSimpleFactory.produceCar("SmallCar"));
		showCar(CarSimpleFactory.produceCar("BigCar"));
	}

	public static void showCar(Car car) {
		car.drive();
	}
}
